Data can be embedded in paper using any number of methods and formats associated with these method. One example is a barcode which is an optical machine-readable representation of data, which shows data about the object to which it attaches. Originally, barcodes represented data by varying the widths and spacings of parallel lines, and may be referred to as linear or 1 dimensional (1D). Later they evolved into rectangles, dots, hexagons and other geometric patterns in 2 dimensions (2D). Although 2D systems use a variety of symbols, they are generally referred to as barcodes as well. Barcodes originally were scanned by special-optical scanners called barcode readers, scanners and interpretive software are available on devices including desktop printers and smartphones.